import {BrowserModule} from '@angular/platform-browser';
import {ErrorHandler, NgModule} from '@angular/core';
import {HttpModule, JsonpModule} from "@angular/http";
import {IonicApp, IonicErrorHandler, IonicModule} from 'ionic-angular';
import {StatusBar} from '@ionic-native/status-bar';
import {SplashScreen} from '@ionic-native/splash-screen';
import {MyApp} from './app.component';
/*customer页面*/
import {HomePage} from '../customer/pages/home/home';
import {MenuPage} from '../customer/pages/menu/menu';
import {IndentPage} from '../customer/pages/indent/indent';
import {CustomerLoginPage} from "../customer/pages/customer-login/customer-login";
import {CustomerRegisterPage} from "../customer/pages/customer-register/customer-register";
import {ShoppingCartPage} from "../customer/pages/shopping-cart/shopping-cart";
import {MyAccountPage} from "../customer/pages/my-account/my-account";
import {ChangePasswordPage} from "../customer/pages/change-password/change-password";
import {MyAccountEditPage} from '../customer/pages/my-account-edit/my-account-edit';
import {PlacedOrderPage} from '../customer/pages/placed-order/placed-order';
import {CustomerAlertPage} from '../customer/pages/alert/alert';
/*customer组件*/
import {CustomerHeaderComponent} from "../customer/components/customer-header/customer-header";
/*公共页面*/
import {EmployeeLoginPage} from '../employee/pages/employee-login/employee-login';
import {RetrievePasswordPage} from '../pages/retrieve-password/retrieve-password';
/*employee页面*/
import {EmployeeHomePage} from '../employee/pages/home/home';
import {EmployeeMenuPage} from '../employee/pages/menu/menu';
import {EmployeeIndentPage} from '../employee/pages/indent/indent';

import {EmployeeShoppingCartPage} from "../employee/pages/shopping-cart/shopping-cart";
import {EmployeeMyAccountPage} from "../employee/pages/my-account/my-account";
import {EmployeeChangePasswordPage} from "../employee/pages/change-password/change-password";
import {EmployeeMyAccountEditPage} from '../employee/pages/my-account-edit/my-account-edit';
import {AlertPage} from '../employee/pages/alert/alert';
import {EmployeePlacedOrderPage} from '../employee/pages/placed-order/placed-order';
/*employee组件*/
import {EmployeeHeaderComponent} from "../employee/components/employee-header/employee-header";
/*提供者*/
import {DishProvider} from '../providers/DishProvider';
import {CategoryProvider} from '../providers/category';
import {CustomerProvider} from '../providers/customerProvider';
import {CartProvider} from "../providers/cartProvider";
import {OrderProvider} from '../providers/orderProvider';

import {EmployeeProvider} from '../providers/employeeProvider';

import {KitProvider} from "../core/foundations/KitProvider";
/*组件*/
import {SpinnerComponent} from '../components/spinner/spinner';
import {SpinnerTotalComponent} from '../components/spinner-total/spinner-total';
import {GetStateNamePipe} from '../pipes/get-state-name/get-state-name';
import {OrderIdPipe} from '../pipes/order-id/order-id';


@NgModule({
  declarations: [
    MyApp,
    /*customer*/
    HomePage,
    MyAccountPage,
    MyAccountEditPage,
    MenuPage,
    IndentPage,
    ChangePasswordPage,
    CustomerLoginPage,
    ShoppingCartPage,
    CustomerRegisterPage,
    PlacedOrderPage,
    CustomerAlertPage,
    /*customer组件*/
    CustomerHeaderComponent,

    /*employee*/
    EmployeeHomePage,
    EmployeeMenuPage,
    EmployeeIndentPage,
    EmployeeShoppingCartPage,
    EmployeeMyAccountPage,
    EmployeeChangePasswordPage,
    EmployeeMyAccountEditPage,
    AlertPage,
    EmployeePlacedOrderPage,
    /*employee组件*/
    EmployeeHeaderComponent,

    /*公共组件*/
    SpinnerComponent,
    SpinnerTotalComponent,

    /*公共页面*/
    RetrievePasswordPage,
    EmployeeLoginPage,
    GetStateNamePipe,
    OrderIdPipe,
  ],
  imports: [
    BrowserModule,
    IonicModule.forRoot(MyApp),
    HttpModule,
    JsonpModule
  ],
  bootstrap: [IonicApp],
  entryComponents: [
    MyApp,
    /*customer*/
    HomePage,
    MyAccountPage,
    MyAccountEditPage,
    MenuPage,
    IndentPage,
    ChangePasswordPage,
    CustomerLoginPage,
    ShoppingCartPage,
    CustomerRegisterPage,
    PlacedOrderPage,
    CustomerAlertPage,
    /*公共页面*/
    RetrievePasswordPage,
    EmployeeLoginPage,

    /*employee*/
    EmployeeHomePage,
    EmployeeMenuPage,
    EmployeeIndentPage,
    EmployeeShoppingCartPage,
    EmployeeMyAccountPage,
    EmployeeChangePasswordPage,
    EmployeeMyAccountEditPage,
    EmployeePlacedOrderPage,
    AlertPage,


  ],
  providers: [
    StatusBar,
    SplashScreen,
    {provide: ErrorHandler, useClass: IonicErrorHandler},
    DishProvider,
    CategoryProvider,
    KitProvider,
    CartProvider,
    OrderProvider,
    CustomerProvider,
    EmployeeProvider
  ]
})
export class AppModule {
}
